Embodiments of the present invention relate generally to a method and apparatus for performing trick modes in a personal video recording (PVR) system, and more particularly to generating a NAV table of data entries to facilitate the efficient playback of certain MPEG frames of an MPEG transport stream for a user-selected trick mode.
Personal Video Recording (PVR) is becoming an increasingly popular feature in advanced interactive digital set-top boxes for cable and satellite systems. PVR allows users to record programs to a hard disk and play the programs back with advanced features including random access and simultaneous play-and-record. Implementing rewind and fast-forward capabilities with PVR requires “trick modes” which give the user the experience of rapidly moving through the video.
Certain trick modes, such as fast-forwarding through a group-of-pictures (GOP)-based MPEG stream, may be implemented easily. Other trick modes, such as smooth-motion rewind or any trick mode using progressive-refresh MPEG streams, may require special processing by the MPEG decoder. Also, the PVR system is not able to analyze an encrypted MPEG stream upon playback and, therefore, some level of analysis should be performed before playback.
It is desirable for the PVR system to have immediate, frame-accurate access to a wide range of information about the MPEG stream without having to over-burden the central processor of the PVR system during playback. Also, it is desirable for the PVR system to maintain correct content rating and encryption states at all times while skipping variable amounts of MPEG stream data during the trick mode.
Further limitations and disadvantages of conventional and traditional approaches will become apparent to one of skill in the art, through comparison of such systems with embodiments of the present invention as set forth in the remainder of the present application with reference to the drawings.